package testfloat;


public class TestFloat {
	public static void main(String[] args) {
	
		User user = new User(400000000);
		Bank bank = new Bank();
		
		int times = 500000;				//存钱次数
		
		bank.cun(user, 400000000);
		
		for (int i = 0; i < times ; i++) {	//不停的往银行存钱
			bank.qu(user, 11);
		}
		
		
		System.out.println("个人现金:" + (int)user.p);
		System.out.println("银行存款:" + (int)bank.all);
		System.out.println("个人资产总计:" + (int)(user.p + bank.all));
	}
	
	private static class User {
		float p = 0;
		public User(float have) {
			p = have;
		}
	}
		
	private static class Bank {
		float all = 0;
		
		/**
		 * 取钱
		 * @param user
		 * @param p
		 */
		public void qu(User user, float p) {
			if(this.all < p) {
				return;
			}
			
			all -= p;
			user.p += p;
		}
		
		/**
		 * 存钱
		 * @param user
		 * @param p
		 */
		public void cun(User user, float p) {
			if(user.p < p) {
				return;
			}
			all += p;
			user.p -= p;
		}
	}
//		
//		
//		float a = 100000009;
//		a -= 256;
//		a += 250;
//		
//		System.out.println((int)a);
//		
//		
//		
//		
//		
//		boolean test = true;
//		if(test) {
//			return ;
//		}
//		
//		
//		Map<String, Integer> it = new HashMap<String, Integer>();
//		Random r = new Random();
//		for (int i = 0; i < 10000; i++) {
//			int k = r.nextInt(15000) + 1000;
//			int d = r.nextInt(30);
//			String key = k + "|" + d;
//			it.put(key, getMaxD(k, d));
//		}
//		
//		int max = 0;
//		for (Integer i : it.values()) {
//			max = i > max ? i : max;
//		}
//		
//		for (String s : it.keySet()) {
//			if(it.get(s) == max) {
//				System.out.println("最大的为:" + s + " ---- "+ max);
//				break;
//			}
//		}
//		
//		System.out.println(max);
//	}
//	
//	/**
//	 * @param k
//	 * @param d
//	 * @return
//	 */
//	public static int getMaxD(int k, int d) {
//		int t1 = 50000000;
//		float t2 = t1;
//		
//		for (int i = 0; i < 1000; i++) {
//			
//			t1-=k;		
//			t1+=k;		
//			
//			t2-=k;
//			t2+=k;
//		}
//		
//		return ((int) t2) - t1;
//	}
}
